package com.bicon.botu.finance.payment.unionpay;

import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

/**
 * @auther 裴志鹏
 * @date 2017/8/18 17:15
 */
@PropertySource("classpath:acp_sdk.properties")
@Component
@Data
public class SDKConfigController {

    /**
     * 前台交易请求地址
     */
    @Value("${acpsdk.frontTransUrl}")
    private String acpsdkFrontTransUrl;

    /**
     * 后台交易请求地址(无卡交易配置该地址)
     */
    @Value("${acpsdk.backTransUrl}")
    private String acpsdkBackTransUrl;

    /**
     * 单笔查询请求地址
     */
    @Value("${acpsdk.singleQueryUrl}")
    private String acpsdkSingleQueryUrl;

    /**
     * 批量交易请求地址
     */
    @Value("${acpsdk.batchTransUrl}")
    private String acpsdkBatchTransUrl;

    /**
     * 文件传输类交易地址
     */
    @Value("${acpsdk.fileTransUrl}")
    private String acpsdkFileTransUrl;

    /**
     * APP交易请求地址
     */
    @Value("${acpsdk.appTransUrl}")
    private String acpsdkAppTransUrl;

    /**
     * 后台交易请求地址(若为有卡交易配置该地址)
     */
    @Value("${acpsdk.cardTransUrl}")
    private String acpsdkCardTransUrl;

    /**
     * 缴费产品前台交易请求地址
     */
    @Value("${acpsdk.jfFrontTransUrl}")
    private String acpsdkJfFrontTransUrl;

    /**
     * 缴费产品后台交易请求地址(无卡交易配置该地址)
     */
    @Value("${acpsdk.jfBackTransUrl}")
    private String acpsdkJfBackTransUrl;

    /**
     * 缴费产品笔查询请求地址
     */
    @Value("${acpsdk.jfSingleQueryUrl}")
    private String acpsdkJfSingleQueryUrl;

    /**
     *
     */
    @Value("${acpsdk.jfCardTransUrl}")
    private String acpsdkJfCardTransUrl;

    /**
     * 缴费产品手机APP交易请求地址
     */
    @Value("${acpsdk.jfAppTransUrl}")
    private String acpsdkJfAppTransUrl;

    /**
     * 默认配置的是UTF-8
     */
    @Value("${acpsdk.encoding}")
    private String acpsdkEncoding ;


    /**
     * 报文版本号
     */
    @Value("${acpsdk.version}")
    private String acpsdkVersion;

    /**
     *  签名方式
     */
    @Value("${acpsdk.signMethod}")
    private String acpsdkSignMethod;

    /**
     * 是否验证https证书，测试环境请设置false，生产环境建议优先尝试true，不行再false。非true的值默认都当false处理
     */
    @Value("${acpsdk.ifValidateRemoteCert}")
    private boolean acpsdkIfValidateRemoteCert;

    /**
     * 后台通知地址，填写接收银联后台通知的地址，必须外网能访问
     */
    @Value("${acpsdk.backUrl}")
    private String acpsdkBackUrl;

    /**
     * 前台通知地址，填写处理银联前台通知的地址，必须外网能访问
     */
    @Value("${acpsdk.frontUrl}")
    private String acpsdkFrontUrl;

    /**
     * 签名证书路径
     */
//    @Value("${acpsdk.signCert.path}")
    private String acpsdkSignCertPath;

    /**
     * 签名证书密码
     */
//    @Value("${acpsdk.signCert.pwd}")
    private String acpsdkSignCertPwd;

    /**
     * 签名证书类型
     */
    @Value("${acpsdk.signCert.type}")
    private String acpsdkSignCertType;

    /**
     * 敏感信息加密证书路径(商户号开通了商户对敏感信息加密的权限，需要对 卡号accNo，pin和phoneNo，cvn2，expired加密（如果这些上送的话），对敏感信息加密使用)
     */
//    @Value("${acpsdk.encryptCert.path}")
    private String acpsdkEncryptCertPath;

    /**
     * 验签中级证书路径(银联提供)
     */
//    @Value("${acpsdk.middleCert.path}")
    private String acpsdkMiddleCertPath;

    /**
     * 验签根证书路径(银联提供)
     */
//    @Value("${acpsdk.rootCert.path}")
    private String acpsdkRootCertPath;
}
